#pragma once

#include <string>

inline const bool IsBlank(const std::string::value_type c)
{
	return (c == ' ' || c == '\t' || c == '\r' || c == '\n');
}

inline const bool IsBlank(const std::wstring::value_type c)
{
	return (c == L' ' || c == L'\t' || c == L'\r' || c == L'\n');
}

 const std::string ToLower(const std::string& in);
 const std::string ToUpper(const std::string& in);
 const std::wstring ToLower(const std::wstring& in);
 const std::wstring ToUpper(const std::wstring& in);

 const std::string TrimBlanks(const std::string& str);
 const std::wstring TrimBlanks(const std::wstring& str);
 std::string FormatString(const char* format, ...);

//  std::string WideToASCII(const std::wstring& wide);
//  std::wstring ASCIIToWide(const std::string& ascii);
// 
//  std::string DataToHexStringUA(const unsigned char* pData, size_t nDataSize);
//  std::string DataToHexStringLA(const unsigned char* pData, size_t nDataSize);
//  std::wstring DataToHexStringUW(const unsigned char* pData, size_t nDataSize);
//  std::wstring DataToHexStringLW(const unsigned char* pData, size_t nDataSize);
